@import url('https://rsms.me/inter/inter.css');


/**
 * Root variables
 *
 * Override the default Infima variables here. These values cascade down to
 * the rest of the elements.
 */

:root,
:root[data-theme=''],
:root[data-theme='dark'] {
  /* See theme-specific "--custom" vars below  */

  /* 
    Customisation here for both Light and Dark themes
  */
  --custom-font-base: 'Inter', BlinkMacSystemFont, -apple-system, 'Segoe UI', 'Roboto', 'Oxygen',
    'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', 'Helvetica', 'Arial',
    sans-serif;
  --custom-font-code: 'Source Code Pro', Menlo, monospace;
  --custom-font-size-base: 1rem;
  --custom-border-radius: 3px;
  --custom-border-radius-md: 6px;
  --custom-primary-darkest: #10633e;
  --custom-primary-darker: #1c8656;
  --custom-primary-dark: #38bc81;
  --custom-primary: #24b47e;
  --custom-primary-light: #65d9a5;
  --custom-primary-lighter: #9fe7c7;
  --custom-primary-lightest: #c5f1dd;
  --custom-background-color: #1f1f1f;
  --custom-background-color-highlight: #fff;
  --custom-background-color-diff: #f5f6f7;
  --custom-background-color-diff-1: #eee;
  --custom-background-color-diff-2: #ccc;
  --custom-content-color: #1f1f1f;
  --custom-content-color-light: #484848;
  --custom-content-color-lightest: #333;
  --custom-content-color-emphasis: #000;
  --custom-border-color: #e0e0e0;
  --custom-color-subtle: #ccc;
  --custom-color-orange-100: #FDF0EA;
  --custom-color-orange-200: #FBE2D5;
  --custom-color-orange-300: #F9D3C0;
  --custom-color-orange-400: #F5B796;
  --custom-color-orange-500: #F08B57;
  --custom-color-orange-600: #EC6E2D;
  --custom-color-orange-700: #D75614;
  --custom-color-orange-800: #A93C04;
  --custom-shadow-lw: 0 3px 5px 0px rgba(0, 0, 0, 0.1);
  --custom-shadow-md: 0 3px 5px 0px rgba(0, 0, 0, 0.1);
  --custom-shadow-tl: 0 12px 28px 0 rgba(0, 0, 0, 0.2), 0 2px 4px 0 rgba(0, 0, 0, 0.1);
  --custom-shadow-xl: 0 30px 60px 0 rgba(0, 0, 0, 0.1);

  /* 
    Infirma overrides with customisation
  */
  /* Colors */
  --ifm-color-content: var(--custom-content-color);
  --ifm-heading-color: var(--custom-content-color);
  --ifm-background-color: var(--custom-background-color);
  --ifm-sidebar-background: var(--custom-background-color);
  --ifm-color-content-secondary: var(--custom-content-color-light);
  --ifm-code-background: var(--custom-background-color-diff);
  --ifm-code-background-dark: #2a2a2a;
  --ifm-code-color: var(--custom-content-color);
  --ifm-color-warning: var(--custom-color-orange-600);

  /* Primary */
  --ifm-color-primary-darkest: var(--custom-primary-darkest);
  --ifm-color-primary-darker: var(--custom-primary-darker);
  --ifm-color-primary-dark: var(--custom-primary-dark);
  --ifm-color-primary: var(--custom-primary);
  --ifm-color-primary-light: var(--custom-primary-light);
  --ifm-color-primary-lighter: var(--custom-primary-lighter);
  --ifm-color-primary-lightest: var(--custom-primary-lightest);

  /* Info */
  --ifm-color-info-darker: var(--custom-background-color-diff-2);
  --ifm-color-info-dark: var(--custom-background-color-diff-1);
  --ifm-color-info: var(--custom-background-color-diff);

  /* Fonts */
  --ifm-font-color-base: var(--custom-content-color);
  --ifm-font-family-base: var(--custom-font-base);
  --ifm-font-family-monospace: var(--custom-font-code);
  --ifm-heading-font-family: var(--custom-font-base);
  --ifm-font-size-base: var(--custom-font-size-base);
  --ifm-heading-font-weight: 700;
  --ifm-font-weight-bold: 700;

  /* Globals */
  --ifm-global-shadow-lw: var(--custom-shadow-lw);
  --ifm-global-shadow-md: var(--custom-shadow-md);
  --ifm-global-shadow-tl: var(--custom-shadow-tl);
  --ifm-contents-border-color: var(--custom-border-color);
  --ifm-hr-border-color: var(--custom-border-color);
  --ifm-code-border-radius: var(--custom-border-radius);
  --ifm-button-border-radius: var(--custom-border-radius);
  --ifm-col-spacing-vertical: 0.5rem;
  --ifm-link-hover-decoration: none;

  /* Buttons */
  --ifm-button-background-color: var(--custom-background-color);
  /* --ifm-button-color: var(--custom-content-color); Not great - changes the green buttons to have black text */

  /* Navbar */
  --ifm-navbar-background-color: var(--custom-background-color);

  /* Footer */
  --ifm-footer-background-color: var(--custom-background-color);

  /* Hero */
  --ifm-hero-background-color: var(--custom-background-color);
  --ifm-hero-text-color: var(--custom-content-color);

  /* Sidebar */
  --ifm-sidebar-border-color: var(--custom-border-color);
  --ifm-menu-color-active: var(--custom-primary);

  /* Panel */
  --ifm-panel-border-color: var(--custom-border-color);
  --ifm-panel-border-color-active: var(--custom-primary);
  --ifm-panel-background-solid: var(--custom-background-color);

  /* Card */
  --ifm-card-background-color: var(--custom-background-color);
  --ifm-card-border-radius: var(--custom-border-radius-md);

  /* Tables */
  --ifm-table-border-color: var(--custom-border-color);
  --ifm-table-stripe-background: var(--custom-background-color-diff);

  /* Alerts */
  --ifm-alert-color: var(--custom-color-orange-600);
}

:root[data-theme='light'] {
  --custom-background-color: #fdfdfd;
}

:root[data-theme='dark'] {
  --custom-primary-darkest: #10633e;
  --custom-primary-darker: #1c8656;
  --custom-primary-dark: #38bc81;
  --custom-primary: #3ecf8e;
  --custom-primary-light: #65d9a5;
  --custom-primary-lighter: #9fe7c7;
  --custom-primary-lightest: #c5f1dd;
  --custom-color-subtle: #484848;

  --custom-background-color: #1f1f1f;
  --custom-background-color-highlight: #2a2a2a;
  --custom-background-color-diff: #2a2a2a;
  --custom-background-color-diff-1: #484848;
  --custom-background-color-diff-2: #666;
  --custom-content-color: #ddd;
  --custom-content-color-light: #aaa;
  --custom-content-color-lightest: #fefefe;
  --custom-content-color-emphasis: #fff;
  --custom-border-color: #444444;
  --custom-shadow-lw: 0 0 3px 3px rgba(0, 0, 0, 0.2);
  --custom-shadow-md: 0 0 5px 5px rgba(0, 0, 0, 0.3);
  --custom-shadow-tl: 0 12px 28px 0 rgba(0, 0, 0, 0.2), 0 2px 4px 0 rgba(0, 0, 0, 0.1);
  --custom-shadow-xl: 0 30px 60px 0 rgba(0, 0, 0, 0.5);

  --ifm-color-gray-100: rgba(224, 235, 247, 0.9);
  --ifm-color-gray-150: rgba(224, 235, 247, 0.85);
  --ifm-color-gray-200: rgba(224, 235, 247, 0.8);
  --ifm-color-gray-300: rgba(224, 235, 247, 0.75);
  --ifm-color-gray-400: rgba(224, 235, 247, 0.7);
  --ifm-color-gray-500: rgba(224, 235, 247, 0.65);
  --ifm-color-gray-600: rgba(224, 235, 247, 0.6);
  --ifm-color-gray-700: rgba(224, 235, 247, 0.55);
  --ifm-color-gray-800: rgba(224, 235, 247, 0.5);
  --ifm-color-gray-900: rgba(224, 235, 247, 0.45);
  --ifm-color-secondary-darker: #000;
  --ifm-color-secondary-dark: #1f1f1f;
  --ifm-color-secondary: #2a2a2a;
  --ifm-color-secondary-light: #2f2f2f;
  --ifm-color-secondary-lighter: #313131;
  --ifm-color-secondary-lightest: #333333;

  /* Button */
  --ifm-button-background-color: var(--custom-background-color-highlight);

  /* Card */
  --ifm-card-background-color: var(--custom-background-color-highlight);
}

html,
body {
  font-smoothing: antialiased;
  text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-text-size-adjust: 100%;
}

:root[data-theme='light'] .navbar__logo.logo--dark,
:root[data-theme=''] .navbar__logo.logo--dark,
:root .navbar__logo.logo--dark {
  display: none;
}
:root[data-theme='light'] .navbar__logo.logo--light,
:root[data-theme=''] .navbar__logo.logo--light,
:root .navbar__logo.logo--light {
  display: inline-block;
}
:root[data-theme='dark'] .navbar__logo.logo--light {
  display: none;
}
:root[data-theme='dark'] .navbar__logo.logo--dark {
  display: inline-block;
}

.button {
  font-family: var(--custom-font-base);
}
.button.button--primary {
  color: white;
  text-shadow: 0px 0px 6px rgba(13, 128, 86, 0.8);
}
.button.button--secondary {
  color: var(--custom-content-color);
  /* background-color: var(--custom-background-color); */
}
.button.button--secondary:hover {
  background-color: var(--custom-background-color-diff-1);
}
:root[data-theme='dark'] .button.button--secondary:hover {
  background-color: var(--custom-background-color-highlight);
}
.button.button--secondary.button--outline {
  border-color: #333;
}
:root[data-theme='dark'] .button.button--secondary {
  /* background-color: var(--custom-background-color-highlight); */
  border-color: #fff;
}
.hero--button {
  text-transform: uppercase;
  padding: 10px 25px;
  font-weight: bold;
}
blockquote,
blockquote p {
  color: var(--custom-content-color);
}

div[class^="announcementBar"] , div[class*=" announcementBar"] {
    padding-bottom: 5px;
}
div[class^="announcementBar"] button span, div[class*=" announcementBar"] button span {
    color: #fff !important;
    padding-bottom: 5px;
    display: inline-block;
}
.docusaurus-highlight-code-line {
  background-color: rgb(72, 77, 91);
  display: block;
  margin: 0 calc(-1 * var(--ifm-pre-padding));
  padding: 0 var(--ifm-pre-padding);
}

@media screen and (min-width: 768px) {
  html,
  body {
    text-rendering: optimizeLegibility;
  }
}

li + li {
  margin-top: 0;
}

.button--lg {
  text-transform: uppercase;
}

.title {
  font-weight: bold;
  color: var(--custom-content-color-lightest) !important;
}

.alert.alert--warning {
  color: var(--custom-color-orange-800);
  border-color: var(--custom-color-orange-800);
  background-color: var(--custom-color-orange-200);
  border-color: var(--custom-color-orange-400);
  margin: 20px 0;
  font-size: 0.9rem;
}

.navbar__brand strong {
  font-family: var(--ifm-heading-font-family);
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.03rem;
  /* font-style: italic; */
}

.navbar,
.main-wrapper {
  /* box-shadow: var(--ifm-global-shadow-md); */
  box-shadow: none;
  border-bottom: 1px solid var(--custom-border-color);
}
.navbar .navbar__link {
  font-weight: bold;
}
/* .navbar-sidebar__items .menu__link {
  line-height: calc(var(--ifm-spacing-vertical) * 2) !important;
  font-weight: bold;
  text-transform: uppercase;
  font-size: 0.9em;
  padding: 10px !important;
} */

.with-underline::after {
  content: '\2501\2501';
  display: block;
  color: var(--ifm-color-primary);
}
article header {
  margin-bottom: 3rem;
}

.hero.is--dark {
  background-color: var(--custom-background-color-diff);
}

/* Sidebar */

@media screen and (max-width: 996px) {
  .navbar .navbar__items--right {
    display: none;
  }
}

/* .navbar .navbar__items--right .react-toggle {
  margin-left: var(--ifm-navbar-item-padding-horizontal);
} */
/* .navbar .navbar__item .badge {
  border-color: var(--ifm-background-color) !important;
  border-radius: 1em;
  display: block;
  float: right;
  font-size: 0.6em;
  line-height: 1;
  margin-top: -0.7em;
  margin-right: -1.5em;
  margin-left: -0.5em;
  padding: 0.3em 0.5em;
  position: relative;
  z-index: 1;
} */
.navbar-sidebar__brand .navbar__brand {
  flex: 1 0;
}
.navbar-sidebar__brand .react-toggle {
  flex: 0;
  text-align: right;
}
.navbar-sidebar__items .menu .menu__link {
  color: var(--ifm-color-content);
  display: block;
}
.navbar-sidebar__items .menu .menu__link .badge {
  border-color: var(--ifm-background-color);
  border-radius: 1em;
  font-size: 0.6em;
  margin-top: -1em;
  margin-left: 0.25em;
}
.navbar-sidebar__items .menu .menu__link.menu__link--sublist::after {
  display: none;
}
.navbar-sidebar__items .menu .menu__list-item .menu__list-item a.menu__link{
  margin-left: 30px;
}

@media screen and (max-width: 996px) {
  .row .col {
    padding-top: var(--ifm-col-spacing-vertical);
    padding-bottom: var(--ifm-col-spacing-vertical);
  }
}
a.card {
  text-decoration: none !important;
  color: var(--ifm-color-content);
  box-shadow: none;
  border: 1px solid #333;
  display: flex;
  /* background-color: var(--ifm-background-color); */
}
a.card .card__body {
  flex: 1;
  flex-grow: 1;
}
a.card:hover {
  transition: all 0.2s ease;
  border: 1px solid var(--custom-primary);
  box-shadow: var(--custom-shadow-xl), 0 0 0 1px var(--custom-primary) !important;
}
.avatar__intro {
  padding-left: 15px;
}

/*
 * Docs
 */

.menu.menu--responsive {
  padding: 0;
}
.menu > ul.menu__list li {
  margin-top: 0;
  margin-bottom: 0;
}
.menu > ul.menu__list li > a {
  padding-left: 0;
  padding-right: 0;
}
.menu .menu__list-item-hidden {
  display: none;
}
/* Category headers */
.menu > ul.menu__list > li.menu__list-item > a:first-child {
  color: var(--custom-content-color-light);
  cursor: text;
  display: flex;
  justify-content: space-between;
  line-height: calc(var(--ifm-spacing-vertical) * 1.25);
  margin-top: calc(var(--ifm-spacing-vertical) * 1.5);
  margin-bottom: 0;
  padding: var(--ifm-menu-link-padding-vertical) 0;
  font-weight: bold;
  color: var(--custom-content-color-lightest) !important;
  text-transform: uppercase;
  font-size: 0.9em;
}
.menu > ul.menu__list > li.menu__list-item:first-child div.title {
  margin-top: 0;
}
.menu > ul.menu__list ul.menu__list {
  border-left: 1px solid var(--custom-border-color);
  margin-left: 0;
  padding-left: var(--ifm-menu-link-padding-horizontal);
}
.menu > ul.menu__list ul.menu__list .menu__link {
  border-radius: 0;
  font-size: 0.85rem;
  margin-left: calc(var(--ifm-menu-link-padding-horizontal) * -1);
  padding-left: var(--ifm-menu-link-padding-horizontal);
}
.menu > ul.menu__list > li > ul.menu__list {
  border-left: 0px none;
  padding-left: 0;
}
.menu .menu__link,
.menu .menu__link:hover,
.menu .menu__link.menu__link--active:not(.menu__link--sublist) {
  background: none;
  line-height: calc(var(--ifm-spacing-vertical) * 1);
}
.menu .menu__link.menu__link--sublist::after {
  background-image: url('data:image/svg+xml;utf8,<svg alt="Arrow" xmlns="http://www.w3.org/2000/svg" width="14px" height="14px" viewBox="-6 -6 38 38"><path fill="rgba(0,0,0,0.3)" d="M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z"></path></svg>');
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
  transition: var(--ifm-transition-fast) ease;
}
.menu .menu__link.menu__link--sublist:hover::after,
.menu .menu__link.menu__link--sublist.menu__link--active::after {
  background-image: url('data:image/svg+xml;utf8,<svg alt="Arrow" xmlns="http://www.w3.org/2000/svg" width="14px" height="14px" viewBox="-6 -6 38 38"><path fill="rgb(40,217,242)" d="M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z"></path></svg>');
}
.menu .menu__list-item.menu__list-item--collapsed .menu__link--sublist::after {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}
.menu .menu__link:hover {
  color: var(--ifm-menu-color-active);
}
.menu .menu__link .badges {
  vertical-align: top;
  margin-top: -1px;
}
.menu .menu__link .badge {
  background-clip: padding-box;
  border: 1px solid var(--custom-content-color-light);
  border-radius: 0.25em;
  display: inline-block;
  font-family: monospace;
  font-size: 0.5rem;
  font-weight: bold;
  height: 1rem;
  line-height: 1rem;
  margin-right: 2px;
  padding: 0 0.25rem;
  vertical-align: middle;
}


/* Make the Docs page take up full height to fix the left sidebar */
div.container.padding-vert--lg .row {
    min-height: 100vh;
}
/* Disable full height for child rows */
div.container.padding-vert--lg .row .row {
    min-height: auto;
}
div[class^='docItemContainer_'] {
  max-width: none;
}
@media (min-width: 997px) {
  div[class^='docItemContainer_'] {
    max-width: none;
    padding: 0 calc(var(--ifm-spacing-horizontal) * 2);
  }
}

main[class^='docMainContainer_'] div.container div.row div.col.col--3 {
  padding-left: 0;
}

div[class^='docSidebarContainer_'] {
  border-right-color: var(--ifm-sidebar-border-color);
  max-width: 250px;
  min-width: 250px;
}

div[class^='sidebar_'] {
  font-size: 0.85rem;
}
div[class^='sidebar_'] .menu {
  background: var(--ifm-sidebar-background);
  margin-right: calc(var(--ifm-spacing-horizontal) * -1);
  padding-bottom: var(--ifm-spacing-vertical);
}

div[class^='sidebar_'] .menu {
  margin-right: calc(var(--ifm-spacing-horizontal) * -1);
}
div[class^='sidebar_'] .menu .menu__link {
  padding-right: var(--ifm-menu-link-padding-horizontal);
}
div[class^='sidebar_'] .menu__link.menu__link--active:not(.menu__link--sublist) {
  border-radius: 0;
  border-right: 2px solid var(--ifm-color-primary);
  padding-right: calc(var(--ifm-menu-link-padding-horizontal) - 2px);
}
div[class^='sidebar_'] .menu__link.menu__link--active:not(.menu__link--sublist) .badge {
  background: var(--ifm-color-primary);
  border: 1px solid var(--ifm-color-primary);
  color: white;
}
@media (min-width: 997px) {
  div[class^='sidebar_'] {
    padding-right: var(--ifm-spacing-horizontal);
    padding-left: var(--ifm-spacing-horizontal);
  }
}

.DummyData {
  overflow-x: auto;
}
.DummyData div {
  padding-right: 30px;
}
.Collapsable summary {
  font-size: 0.9rem;
  margin-bottom: 20px;
}
.Collapsable summary:hover {
  cursor: pointer;
}

div[class^="codeBlockContent"] , div[class*=" codeBlockContent"], .prism-code {
  background-color: var(--ifm-code-background-dark) !important;
}
.code-with-header {
  border-radius: 4px;
  overflow: hidden;
}
.prism-code {
  padding: 0 !important;
  margin-bottom: 0;
  background-color: var(--ifm-code-background-dark);
}
.code-with-header pre {
  border-radius: 0 0 4px 4px;
}
.code-with-header.code-with-response  {
  border-radius: 0;
}
.code-header {
  background: var(--ifm-code-background-dark);
  color: #ccc;
  padding: 5px 15px;
  border-radius: 4px 4px 0 0;
  font-size: 0.8rem;
  font-weight: bold;
  /* text-transform: uppercase; */
  border-bottom: 1px solid #444;
}
.repsonse-header {
  border-radius: 0 0 4px 4px;
}

/* HomePage */
.ForDevelopers .row {
  display: flex;
  flex-direction: row-reverse;
}
.ForDevelopers .button {
  text-align: left;
}
.ForDevelopers .button.button--link:hover {
  text-decoration: none;
  transition: all 0.2s ease;
  opacity: 0.8;
}

.react-toggle-thumb {
  box-shadow: none !important;
}
a.hash-link {
  text-decoration: none;
  font-style: none;
  color: var(--custom-color-subtle);
}

.footer {
  border-top: 1px solid var(--custom-border-color);
  padding-bottom: 80px;
}

.has-emphasis {
  color: var(--custom-content-color-emphasis);
}

.ButtonTabs {
  padding-left: 0 !important;
}
.ButtonTabs .button {
  width: 100%;
  display: block;
  color: var(--custom-content-color) !important;
  margin-right: 10px;
  margin-bottom: 8px;
  border: 2px solid var(--ifm-button-background-color) !important;
}
.ButtonTabs .button.is-active,
.ButtonTabs .button:hover,
.ButtonTabs:hover .button.is-active:hover {
  border: 2px solid var(--custom-primary) !important;
  box-shadow: var(--custom-shadow-lw);
}
/* Disable the border on the active button when hovering across the buttons */
.ButtonTabs:hover .button.is-active {
  border: 2px solid var(--ifm-button-background-color) !important;
}
/* But */
@media screen and (max-width: 997px) {
  .ButtonTabs {
    padding-left: var(--ifm-spacing-horizontal) !important;
  }
  .ButtonTabs > div {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    -ms-overflow-style: -ms-autohiding-scrollbar !important;
  }
  .ButtonTabs .button {
    display: inline-block;
    width: auto;
  }
}

@media screen and (max-width: 600px) {
  .responsive-button {
    width: 100%;
    margin: 5px 0 !important;
  }
}

@media screen and (min-width: 996px) {
  .row.is-multiline .col {
    margin-top: var(--ifm-spacing-horizontal) !important;
    margin-bottom: var(--ifm-spacing-horizontal) !important;
  }
}

.has-hover-pointer:hover {
  cursor: pointer;
}
.section-md {
  margin: 2rem 0;
}
.section-lg {
  margin: 5rem 0;
}
.hidden {
  display: none;
}

.HowSections .col {
  margin-bottom: 20px;
}
.HowSections img.diagram {
  margin: 0px auto 30px auto;
  display: block;
}
.HowCard {
  position: relative;
}
.HowCard::before,
.HowCard::after {
  bottom: 100%;
  border: solid transparent;
  content: '';
  height: 0;
  left: 50%;
  width: 0;
  position: absolute;
  pointer-events: none;
  margin-bottom: -1px;
}
.HowCard::before {
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;

  border-bottom: 5px solid black;
  border-width: 12px;
  margin-left: -12px;
}
.HowCard::after {
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;

  border-bottom: 5px solid var(--ifm-card-background-color);
  border-width: 11px;
  margin-left: -11px;
}

.Blog .code-with-header {
  margin-bottom: 30px;
}
.badge--secondary {
  color: var(--ifm-color-content);
}

.Figure {
  text-align: center;
  margin: 30px 0;
}
.Figure figure {
  margin: 0 auto;
  width: 100%;
}
.Figure img {
  box-shadow: 0px 0px 5px 5px rgba(0, 0, 0, 0.2);
  border-radius: 4px;
}
.Figure figcaption {
  font-size: 0.8rem;
}

.Mermaid {
  text-align: center;
  margin: 80px 0;
  font-family: var(--custom-font-base);
  color: var(--ifm-color-content);
  font-size: 0.9rem;
}
.Mermaid .graph {
  overflow-x: auto;
  margin: 0px calc(var(--ifm-spacing-horizontal) * -1);
  padding: var(--ifm-spacing-horizontal);
}
.Mermaid div,
.Mermaid tspan,
.Mermaid g.classGroup text {
  font-family: var(--custom-font-base);
  color: var(--ifm-color-content);
  /* font-size: 0.9em; */
}
.Mermaid figcaption {
  font-size: 0.8rem;
  margin-bottom: 20px;
}

.DocSearch-Button {
  border-radius: 8px !important;
}
.DocSearch-Button svg {
  display: none;
}
.DocSearch-Button-Placeholder {
  font-family: var(--ifm-font-family-base);
  line-height: 10px;
}


.prism-code {
  background-color: none;
  white-space: normal;
  word-break: break-word;
  font-size: 0.8rem;
  outline: none !important;
}
.prism-code div, 
.prism-code div:focus, 
.prism-code div:active {
  outline: none !important;
}
.token.keyword.module,
.token.property-access,
.token.function {
  font-style: normal !important;
  color: #ccc !important;
}
.token.plain,
.token.parameter,
.token.punctuation,
.token.operator,
.token.console.class-name,
.token.doc-comment.parameter,
.token.doc-comment.optional-parameter,
.token.doc-comment.parameter.punctuation,
.token.doc-comment.optional-parameter.punctuation {
  font-style: normal !important;
  color: #ccc !important;
}
.token.keyword,
.token.doc-comment.keyword {
  font-style: normal !important;
  color: #569cd6 !important;
}
.token.string {
  font-style: normal !important;
  color: #24b47e !important;
}
.token.console {
  font-style: normal !important;
  color: #49c1ad !important;
}
.token.constant {
  font-style: normal !important;
  color: #569cd6 !important;
}
.token.comment {
  font-style: normal !important;
  color: #666 !important;
}
.token.number {
  color: #b5cea8 !important;
}
.token.boolean,
.token.doc-comment.class-name {
  @apply text-green-500;
}




html[data-theme='light'] .DocSearch, html[data-theme='dark'] .DocSearch {
  --docsearch-text-color: var(--custom-content-color);
  --docsearch-muted-color:  var(--custom-content-color-light);
  --docsearch-modal-background: var(--custom-background-color-diff);
}

.DocSearch-Button {
  border-radius: 6px !important;
  background: var(--custom-background-color-diff) !important;
  font-family: var(--ifm-font-family-base);
}
.DocSearch-Button svg {
  display: none;
}
.DocSearch-Button-Placeholder {
  font-family: var(--ifm-font-family-base);
  line-height: 10px;
  color: var(--custom-content-color-light) !important;
}
.DocSearch-Button-Key {
  background: var(--custom-background-color-diff-1) !important;
  color: var(--custom-content-color-light) !important;
  box-shadow: none !important;
  box-sizing: initial;
  margin-top: 3px;
}
 .DocSearch-SearchBar form {
  background: var(--custom-background-color-diff) !important;
  color: var(--custom-content-color) !important;
}
.DocSearch-Footer {
  display: none !important;
}


.navbar-item-github:hover {
  opacity: 0.6;
}
.navbar-item-github:before {
  content: '';
  width: 24px;
  height: 24px;
  display: flex;
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12'/%3E%3C/svg%3E")
    no-repeat;
}
html[data-theme='dark'] .navbar-item-github:before {
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='white' d='M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12'/%3E%3C/svg%3E")
    no-repeat;
}
.navbar-item-twitter:hover {
  opacity: 0.6;
}
.navbar-item-twitter:before {
  content: '';
  margin-top: 6px;
  width: 24px;
  height: 24px;
  display: flex;
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 335 276' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m302 70a195 195 0 0 1 -299 175 142 142 0 0 0 97 -30 70 70 0 0 1 -58 -47 70 70 0 0 0 31 -2 70 70 0 0 1 -57 -66 70 70 0 0 0 28 5 70 70 0 0 1 -18 -90 195 195 0 0 0 141 72 67 67 0 0 1 116 -62 117 117 0 0 0 43 -17 65 65 0 0 1 -31 38 117 117 0 0 0 39 -11 65 65 0 0 1 -32 35'/%3E%3C/svg%3E")
    no-repeat;
}
html[data-theme='dark'] .navbar-item-twitter:before {
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 335 276' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='white' d='m302 70a195 195 0 0 1 -299 175 142 142 0 0 0 97 -30 70 70 0 0 1 -58 -47 70 70 0 0 0 31 -2 70 70 0 0 1 -57 -66 70 70 0 0 0 28 5 70 70 0 0 1 -18 -90 195 195 0 0 0 141 72 67 67 0 0 1 116 -62 117 117 0 0 0 43 -17 65 65 0 0 1 -31 38 117 117 0 0 0 39 -11 65 65 0 0 1 -32 35'/%3E%3C/svg%3E")
    no-repeat;
}
.navbar__item .dropdown__menu li:not(:first-child) {
  margin-top: 5px;
}

.w-full {
  width: 100%;
  max-width: 100%;
}

/* Section */
.Section {
  position: relative;
  display: flex;
  flex-direction: column;
}
.Section-Hash {
  margin-left: 8px;
  color: var(--custom-content-color-light);
  opacity: 0.4;
}
.Section-Title:hover .Section-Hash {
  color: var(--custom-primary);
  opacity: 1;
}
.Section-Title {
  cursor: pointer;
  scroll-margin: 74px; /* Navbar size (60) + a little margin */
}

/* Showcase */
.ShowcaseCard {
  position: relative;
  height: 100%;
  display: flex;
  flex-direction: column;
  box-shadow: none;
  border: 1px solid #333;
  padding: var(--ifm-card-vertical-spacing) var(--ifm-card-horizontal-spacing);
}

.ShowcaseCard:hover {
  transition: all 0.2s ease;
  border: 1px solid var(--custom-primary);
  box-shadow: var(--custom-shadow-xl), 0 0 0 1px var(--custom-primary) !important;
}

.ShowcaseCard-Img {
  height: 100%;
  width: auto;
}

.ShowcaseCard-ImgContainer {
  height: 140px;
  display: flex;
  justify-content: center;
}

.ShowcaseCard-Text {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.ShowcaseCard-Text p {
  width: 100%;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;  
  overflow: hidden;
  margin: 0;
}

.ShowcaseCard-Text h3 {
  opacity: 0;
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
  backdrop-filter: blur(3px) contrast(80%);
  padding: var(--ifm-card-vertical-spacing) var(--ifm-card-horizontal-spacing);
  transition: 0.2s ease;
}

.ShowcaseCard-Content {
  display: flex;
  flex-direction: column;
  margin-bottom: var(--ifm-card-vertical-spacing);
  height: 100%;
}

.ShowcaseCard:hover h3 {
  opacity: 1;
}

.ShowcaseCard-Tag {
  color: var(--custom-primary);
  font-weight: bold;
  font-size: 12px;
  margin: 8px 4px 12px 0px;
}

.ShowcaseCard-Footer {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
}

.ShowcaseCard-Footer-Item {
  width: 100%;
}

/* Spaces between children */
.ShowcaseCard-Footer-Spaced .ShowcaseCard-Footer-Item:first-child {
  margin-right: 4px;
}

.ShowcaseCard-Footer-Spaced .ShowcaseCard-Footer-Item:nth-child(even) {
  margin-left:  4px;
  margin-right: 4px;
}

.ShowcaseCard-Footer-Spaced .ShowcaseCard-Footer-Item:last-child {
  margin-right: 0px;
}

@media screen and (max-width: 997px) {
  .ShowcaseCard-ImgContainer {
    height: 120px;
    align-self: center;
  }

  .ShowcaseCard-Content {
    display: flex;
    flex-direction: row;
  }

  .ShowcaseCard-Text {
    width: 100%;
    margin-left: var(--ifm-card-horizontal-spacing);
  }

  .ShowcaseCard-Tag {
    margin-top: 0px;
  }

  .ShowcaseCard-Footer a {
    margin: var(--ifm-card-vertical-spacing) var(--ifm-card-horizontal-spacing) 0 0;
  }

  .ShowcaseCard-Text h3 {
    position: relative;
    bottom: 0;
    opacity: 1;
    backdrop-filter: blur(0) contrast(100%);
    padding: 0;
  }
}

@media screen and (max-width: 650px) {
  .ShowcaseCard-ImgContainer {
    height: 80px;
  }
}

@media screen and (max-width: 650px) {
  .ShowcaseCard-Content {
    flex-direction: column;
    padding: 0px;
  }

  .ShowcaseCard-Text {
    margin: 0px;
    padding: 0px;
  }

  .ShowcaseCard-Text h3 {
    margin-top: var(--ifm-card-vertical-spacing);
  }
}

@media screen and (max-width: 380px) {
  .ShowcaseCard-Footer {
    flex-direction: column;
  }

  /* Spaces between children */
  .ShowcaseCard-Footer-Spaced .ShowcaseCard-Footer-Item:first-child {
    margin-right: 0px;
  }

  .ShowcaseCard-Footer-Spaced .ShowcaseCard-Footer-Item:nth-child(even) {
    margin-left:  0px;
    margin-right: 0px;
  }
}


/* New CSS */

.tabs {
  margin:0;
  font-size: 0.7rem;
  background-color: var(--ifm-code-background-dark);
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  border-bottom: 1px solid var(--custom-border-color);
}
.tabs li {
  padding: 8px;
  border-radius: 0;
  border-width: 0px;
  color: var(--ifm-color-gray-500);
}
.tabs li.tabs__item--active {
  color: var(--custom-primary);
}
div[role=tabpanel], div[role=tabpanel] div {
  margin-top: 0 !important;
  outline: none !important;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
}


.method-list-group {
  list-style: none;
  padding: 0;
  margin: 0;
}
.method-list-group li {
  border-top: 1px solid var(--custom-border-color);
  padding-top: 12px;
}
.method-list-group li:last-child {
  border-bottom: 1px solid var(--custom-border-color);
}

h4.method-list-item-label {
  display: flex;
}
h4.method-list-item-label .method-list-item-label-name {
  font-family: var(--ifm-font-family-monospace);
  font-size: 0.8rem;
}
h4.method-list-item-label .method-list-item-label-badge {
  font-family: var(--ifm-font-family-monospace);
  font-size: 0.8rem;
  padding: 0 5px;
  font-weight: 300;
}
h4.method-list-item-label .method-list-item-validation {
  font-family: var(--ifm-font-family-monospace);
  font-size: 0.8rem;
  padding: 0 5px;
  font-weight: 300;
}


.method-list-group .method-list-group {
  border: 1px solid var(--custom-border-color);
  border-radius: 8px;
  margin-bottom: 20px;
  max-width: 600px;
}
.method-list-group .method-list-group li {
  padding: 12px;
  border-bottom: none;
}
.method-list-title {
  margin: 0;
  padding: 6px 12px;
}
.method-list-group .method-list-group li div, 
.method-list-group .method-list-group li h4, 
.method-list-group .method-list-group li p {
  padding: 0;
  margin: 0;
}
.method-list-group .method-list-group li h4 {
  margin-bottom: 4px;
}

.video-with-border {
  border-radius: 5px;
  overflow: hidden;
  border: 2px solid var(--custom-border-color);
}
